package org.example.cicdi.service.impl.second;

import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;

import org.example.cicdi.enums.EnumWhiteTableAnnotation;
import org.example.codegenerate.modelext.WebVo.domian.table.WebModelVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
@Slf4j
public class TbfacaService {
    @Autowired
    private List<TableAnnotationServiceSecond> tasList;
   /* public void handleTableVo(Class<?> cl, TableVoDomain tableVoDomain) {
        if (CollectionUtils.isEmpty(tasList)) {
            return;
        }

        for (TableAnnotationServiceSecond service : tasList) {
            if (EnumWhiteTableAnnotation.getByCode(service.getCode()) != null) {
                service.handleTableVo(cl, tableVoDomain);
            }
        }

        //log.info("类：{}，表数据封装：{}", cl.getName(), JSONObject.toJSON(model));
    }*/
    /*
    * 扩展了参数范围，从TableVoDomain到WebModelVo
    * */
    public void handleTableVo(Class<?> cl, WebModelVo webModelVo/*TableVoDomain tableVoDomain*/) {
        //TableVoDomain tableVoDomain=webModelVo.getTableVoDomain();
        if (CollectionUtils.isEmpty(tasList)) {
            return;
        }

        for (TableAnnotationServiceSecond service : tasList) {
            if (EnumWhiteTableAnnotation.getByCode(service.getCode()) != null) {
                service.handleTableVo(cl, webModelVo);
            }
        }

        //log.info("类：{}，表数据封装：{}", cl.getName(), JSONObject.toJSON(model));
    }
}
